This invention relates in general to computer systems having a mother board with one or more bus connectors for receiving one or more add-in boards and in particular, to a circuit for electronically sensing whether or not an add-in board is inserted into a bus connector of the mother board.
FIG. 1 illustrates, as an example, a mother board 10 having a plurality of integrated circuits, 14-1 to 14-3, for performing certain functionality of the mother board 10, and two slots, 11 and 12, for optionally receiving add-in boards which serve to expand the functionality of the mother board 10. So as to be compatible with the ISA or AT bus used in personal computers, each slot may have either one or two connectors, wherein one connector (e.g., 15 and 17) includes all of the signals needed for transferring 8 bits of data at a time between a host computer on the mother board 10 and an add-in board inserted into the connector, and the second connector (e.g., 16), if provided, includes those additional signals needed for transferring 16 bits of data at a time.
FIGS. 2 and 3 respectively illustrate, as examples, a first add-in board 20 having a plurality of integrated circuits, 26-1 to 26-3, for performing certain expanded functionality, and a second add-in board 30 also having a plurality of integrated circuits, 36-1 to 36-3, for performing other expanded functionality. To make electrical contact with the mother board 10, the first add-in board 20 also includes two connectors, 22 and 24, adapted to be inserted into either slot 11 or 12 of the mother board 10, and the second add-in board 30 includes one connector 32 adapted to be inserted into either slot 11 or 12 of the mother board 10. In particular, connectors 22 and 24 of the first add-in board 20 are adapted to be respectively inserted into connectors 15 and 16 of the mother board 10 when the first add-in board 20 is inserted into slot 11, and connectors 22 and 32, respectively of the first add-in board 20 and the second add-in board 30, are adapted to be inserted into connector 17 of the mother board 10 when either the first add-in board 20 or the second add-in board 30 is inserted into slot 12. The second add-in board 30 also includes an RS-232 connector 34 adapted to be connected to a serial port (not shown) on the mother board 10.
FIG. 4 illustrates, as an example, a block diagram of a computer system wherein the first add-in board 20 is inserted into slot 11 of the mother board 10, and the second add-in board 30 is inserted into slot 12 of the mother board 10. In particular, with the add-in boards, 20 and 30, so inserted, a host computer 40 on the mother board 10 communicates with the second add-in board 30 via an 8-bit bus 42, and communicates with the first add-in board 20 via a 16-bit bus 44, wherein the 8-bit bus 42 includes signals transmitted through connector 17 and the 16-bit bus 44 includes signals transmitted through connectors 15 and 16 as previously described, for example, with reference to the ISA or AT bus used in personal computers.
FIG. 5 illustrates, as an example, a bus structure 400 typical of the 8-bit bus 42 and 16-bit bus 44. In particular, the bus structure 400 includes a plurality of data lines 52 (also referred to herein as a "data bus") and a plurality of address lines 54 (also referred to herein as an "address bus"), which may be separate or combined by conventional multiplexing techniques. For an 8-bit bus, such as the 8-bit bus 42, the bus structure 400 would have 8 data lines, and for an 16-bit bus, such as the 16-bit bus 44, the bus structure 400 would have 16 data lines. Also included in the bus structure 400 are a plurality of control lines 50, one or more ground lines 46, and one or more power lines 48.
When the first add-in board 20 is inserted into slot 12 of the mother board 10, the second connector 24 of the add-in board 20 is left "hanging in air" while the first connector 22 of the add-in board 20 is inserted into the single connector 17 of slot 12. If the add-in board 20 is of a type requiring connection to a 16-bit bus, then it should be pulled out of slot 12 and reinserted into a 16-bit slot, such as slot 11. 0n the other hand, if the add-in board 20 is of a type which can operate in either 8-bit or 16-bit mode, then it may be desirable for the add-in board 20 to automatically configure its operating mode to conform to the type of slot it has been inserted into and ignore or block the unconnected (i.e., "hanging") signals so that they do not interfere with the operation of the add-in board 20. In either case, it is useful for the add-in board 20 to be able to automatically determine, as soon as possible after reset or system start up, for examples, whether it has been inserted into an 8-bit or a 16-bit slot.
It is also desirable at times for the second add-in board 30 to determine whether or not it has been inserted into a slot of the mother board 10, as opposed to being connected to a power supply and used in a stand-alone manner. For example, the add-in board 30 may function as either an internal or external modem depending upon whether or not it has been inserted into a slot, such as slot 11 or 12, of the mother board 10. In particular, when the add-in board 30 is inserted into slot 12, it functions as an internal modem by communicating data through connector 17, and when the add-in board 30 is not inserted into slot 12, it acts as an external modem by communicating data through its RS-232 connector 34. Accordingly, it may also be desirable for the add-in board 30 to automatically determine, as soon as possible after reset or system start up, for examples, whether it has been inserted into a slot of the mother board 10.
FIG. 6 is useful for illustrating a prior art technique for determining whether or not an add-in board is inserted into a bus connector of a mother board. In the technique, one of the ground lines (e.g., 46-1 of the ground lines 46) from the mother board is used for determining whether or not the add-in board is inserted into the bus connector of the mother board. A drawback of the technique is that the ground line used for such determination is no longer available as a ground line to the add-in board (although it continues to function as a ground line for other add-in boards connected to it).
The ground line (e.g., 46-1) is connected from the mother board through a pin or contact 27 of its bus connector (e.g., slot 11 or 12) to the add-in board through an opposing pin or contact 57 of a mating connector of the add-in board. On the add-in board, a pull-up resistor 56 is connected at one end to the pin or contact 57 of the add-in board at node 58, and at another end to a voltage, such as a logic level voltage of 5 volts. A voltage detection circuit 60 detects the voltage V on the node 58, and generates a control signal 61 indicative of the detected voltage. If the add-in board is inserted into the bus connector of the mother board, then opposing pins or contacts, 57 and 27, respectively of the add-in board and the mother board, come together making electrical contact. As a result, the voltage V at node 58 is pulled down close to ground "gnd", and the detection circuit 60 generates a corresponding control signal 61, such as, for example, a logic level LOW signal. On the other hand, if the add-in board is not inserted into the bus connector of the mother board, then opposing pins or contacts, 57 and 27, respectively of the add-in board and the mother board, do not come together to make electrical contact. As a result, the voltage V at node 58 is pulled up through resistor 56 close to the logic level voltage of 5 volts, and the detection circuit 60 generates a corresponding control signal 61, such as, for example, a logic level HIGH signal.
As previously mentioned, one problem with such a prior art technique for electronically detecting whether or not an add-in board is inserted into a bus connector of a mother board, is that at least one of the ground lines of the mother board must be dedicated with respect to the add-in board for such detection and as a result, is not available for use as a ground line by the add-in board. For high performance applications, this reduction in the number of ground lines can be a significant disadvantage.